package com.candy.control;

import com.candy.bean.UserInfo;
import com.candy.service.UserInfoService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserinfoController {
    @Autowired
    UserInfoService userInfoService;


    /**
     * 根据分页获取用户列表信息
     * @param pageNum 表示当前的页面
     * @param pageSize 表示页面里面显示的数据容量
     * @param userInfo 进行筛选用户的条件
     * @return 返回用户列表信息以及分页信息
     */
    @RequestMapping("/getUserInfoByPage")
    public PageInfo<UserInfo> getUserInfoByPage(Integer pageNum,Integer pageSize,UserInfo userInfo){
//        PageHelper.startPage方法会将下面跟着的第一个查询语句进行分页处理
//        pageNum：获取第几页信息
//        pageSize：每页里面要显示几条数据
        PageHelper.startPage(pageNum,pageSize);
//        查询用户列表信息
        List<UserInfo> userInfoes=userInfoService.getUserInfoes(userInfo);
        PageInfo<UserInfo> pageInfo=new PageInfo<>(userInfoes);
        return pageInfo;
    }

    /**
     * 获取用户列表信息（可以根据条件进行筛选）
     * @param userInfo
     * @return
     */
    @RequestMapping("/getUserInfo")
    public List<UserInfo> getUserInfo(UserInfo userInfo){
        return userInfoService.getUserInfoes(userInfo);
    }
//处理用户新增、修改的请求
    @RequestMapping("/editUserInfo")
    public String editUserInfo(UserInfo userInfo){
        int num=userInfoService.editUserInfo(userInfo);
        if(num>0){
            return "ok";
        }else {
            return "eg";
        }

    }

    //处理用户删除的请求
    @RequestMapping("/deleteUserInfo")
    public String deleteUserInfo(UserInfo userInfo){
        int num=userInfoService.editUserInfo(userInfo);
        if(num>0){
            return "ok";
        }else {
            return "eg";
        }

    }




}
